package 常用类.抽象类;
/*
    抽象类：父类的方法不确定
    当父类的某些方法，需要声明，但是又不确定如何实现时，可以将其声明为抽象类方法，那么这个方法就是抽象类
    抽象类的特点：
        1.抽象类不能被实例化
        2.抽象类可以没有抽象方法，即可以没有abstract方法
        3.一旦这个类包含了abstract方法，那么这个类就一定是抽象类
        4.abstract只能修饰类和方法，不能修饰属性和其它的
        5.抽象类可以有任意成员，比如：非抽象方法，构造器，静态属性，普通属性，静态方法，静态属性
        6.抽象方法不能有主体，既不能实现
        7.如果一个类继承了抽象类，则它必须实现抽象类的所有的抽象方法，除非它自己也声明为抽象类
        8.抽象方法不能被private，final，static关键字修改
 */
public class 抽象类 {
    public static void main(String[] args) {
//        Animal animal = new Animal();
    }
}

abstract class Animal{
    public int n1 = 1;
    private static String name;
    public void run(){
        System.out.println("run");
    }

    public abstract void eat();
}

